package com.ruoyi.user.service;



import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.pojo.request.PageSearchParam;
import com.ruoyi.common.core.pojo.result.Pages;
import com.ruoyi.user.model.pojo.entity.UserDynamic;
import com.ruoyi.user.model.pojo.result.UserSearchInfo;

import java.util.Set;

/**
 * <p>
 * 用户动态权限 服务类
 * </p>
 *
 * @author ${author}
 * @since 2023-08-06
 */
public interface IUserDynamicService extends IService<UserDynamic> {
    /**
     * 不看TA动态
     * @param userId
     * @param aimUserId
     * @return
     */
    Integer noLookTa(Long userId, Long aimUserId);


    /**
     * 不看TA动态 检查
     * @param userId
     * @param aimUserId
     * @return
     */
    Integer getNoLookTa(Long userId, Long aimUserId);



    /**
     * 不让TA看我动态
     * @param userId
     * @param aimUserId
     * @return
     */
    Integer noLookMy(Long userId, Long aimUserId);

    /**
     * 不让TA看我动态检查
     * @param userId
     * @param aimUserId
     * @return
     */
    Integer getNoLookMy(Long userId, Long aimUserId);

    /**
     * 不看TA列表
     * @param param
     * @param userId
     * @return
     */
    Pages<UserSearchInfo> noLookTaList(PageSearchParam param, Long userId);


    /**
     * 不让他看列表
     * @param param
     * @param userId
     * @return
     */
    Pages<UserSearchInfo> noLookMyList(PageSearchParam param, Long userId);


    Set<Long> getNoDynamicUserIds(Long userId);

}
